package com.xd.core.business.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @ClassName RepayDetailVo
 * @Description 还款详情信息返回vo
 * @Author Zch
 * @Date 2025/6/10 星期二 19:57
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class RepayDetailVo {

    @ApiModelProperty(value = "申请提款金额")
    private String outLoan;

    @ApiModelProperty(value = "借款方式 0:等额本金 1:等额本息 2:等本等息 3:到期还本付息 4:先息后本")
    private String loanMethod;

    @ApiModelProperty(value = "借款方式 0:等额本金 1:等额本息 2:等本等息 3:到期还本付息 4:先息后本")
    private String loanMethodRemark;

    @ApiModelProperty(value = "还款频率（0--天，1--月，2--周）")
    private String repayFrequency;

    @ApiModelProperty(value = "还款频率")
    private String repayFrequencyRemark;

    @ApiModelProperty(value = "贷款期限")
    private Integer term;

    @ApiModelProperty(value = "实际到账日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", shape = JsonFormat.Shape.STRING, timezone = "GMT+8")
    private Date disbursementDate;

    @ApiModelProperty(value = "贷款截止日期")
    @JsonFormat(pattern = "yyyy-MM-dd", shape = JsonFormat.Shape.STRING, timezone = "GMT+8")
    private Date outEndTime;

    @ApiModelProperty(value = "最近一次还款日期")
    @JsonFormat(pattern = "yyyy-MM-dd", shape = JsonFormat.Shape.STRING, timezone = "GMT+8")
    private Date latestRepaymentDate;

    @ApiModelProperty(value = "每月还款日")
    private String repayDay;

    @ApiModelProperty(value = "贷款合同编号")
    private String loanContractNo;

    @ApiModelProperty(value = "年化率%")
    private BigDecimal rate;

    @ApiModelProperty(value = "争议方式(1--公证,2--仲裁,3--诉讼)")
    private String controversy;

    @ApiModelProperty(value = "争议方式(1--公证,2--仲裁,3--诉讼)")
    private String controversyRemark;

    @ApiModelProperty("仲裁所在城市")
    private String cityRemark;
}
